#ifndef __STATEMANAGER_H__
#define __STATEMANAGER_H__

#include "GameState.h"
#include <vector>

class CStateManager
{
protected:
	std::vector<CGameState*> m_list_state;
	static CStateManager* m_instance;
public:
	std::vector<CGameState*> GetListState();
	static CStateManager* GetInstance();

	void ChangeState(CGameState* state);
	void PushState(CGameState* state);
	void PopState();
	void ClearAllState();
};

#endif